﻿using System;
namespace Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg {
    
    
    public partial class EsindusoigusType : global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IEsindusoigusType {
        
        private global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.XTegevus @__tegevus;
        
        private global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.XIsikuroll @__roll;
        
        private global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.XEsindustyyp @__liik;
        
        private string @__kirjeldus;
        
        public EsindusoigusType() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public EsindusoigusType(global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.XTegevus @tegevus, global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.XIsikuroll @roll, global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.XEsindustyyp @liik, string @kirjeldus) {
            this.@__tegevus = @tegevus;
            this.@__roll = @roll;
            this.@__liik = @liik;
            this.@__kirjeldus = @kirjeldus;
        }
        
        /// <summary>
        /// Required parameters
        /// </summary>
        public EsindusoigusType(global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.XTegevus @tegevus, string @kirjeldus) {
            this.@__tegevus = @tegevus;
            this.@__kirjeldus = @kirjeldus;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected EsindusoigusType(IEsindusoigusType @esindusoigusType) {
            this.@__tegevus = @esindusoigusType.Tegevus;
            this.@__roll = @esindusoigusType.Roll;
            this.@__liik = @esindusoigusType.Liik;
            this.@__kirjeldus = @esindusoigusType.Kirjeldus;
        }
        
        public virtual global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.XTegevus Tegevus {
            get {
                return this.@__tegevus;
            }
            set {
                this.@__tegevus = value;
            }
        }
        
        public virtual global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.XIsikuroll Roll {
            get {
                return this.@__roll;
            }
            set {
                this.@__roll = value;
            }
        }
        
        public virtual global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.XEsindustyyp Liik {
            get {
                return this.@__liik;
            }
            set {
                this.@__liik = value;
            }
        }
        
        public virtual string Kirjeldus {
            get {
                return this.@__kirjeldus;
            }
            set {
                this.@__kirjeldus = value;
            }
        }
    }
}
